The invention is concerned with video compression and streaming in which a plurality of video sources share a transmission link. It is particularly, though not exclusively, applicable to the delivery of video encoded at a number of different constant quality levels over a shared backhaul network.
Traditionally a video on demand service, such as BT Vision, is supported by encoding video at a constant bit rate and delivering it over a network at the same constant bit rate. This generally requires bandwidth reservation on the network, which can be expensive to provide. Video encoded using compression techniques naturally has variable bit rate, as the number of bits produced when encoding a picture depends on the picture content: how similar it is to previously encoded pictures and how much detail it contains. Some video scenes can be coded to a given quality with a small number of bits, whereas other scenes may require significantly more bits to achieve the same quality. When constant bit rate encoding is used, video has to be coded at time varying quality to meet the bit rate constraint. This has been shown to be sub-optimal to the user, who would prefer to see constant quality. Also, by fixing the bit rate independent of the genre of the video content, some genres of content can be encoded well, such as news and drama, whereas others, such as fast moving sport and music videos and concerts, can only be coded quite poorly. Hence to overcome these problems we propose equitable quality streaming, where the aim is not to share bandwidth equally between concurrent video sessions, but to divide it so that the same video quality can be delivered to each user. The need for bandwidth reservation is removed, with the video delivery system adapting the quality and delivery rate of each concurrent video session so as to meet the overall bit rate constraint.
According to the present invention there is provided a method of transmitting a plurality of video streams, over a transmission link, comprising, at intervals:
choosing for each stream an encoder setting such that the sum of the bit rates generated by encoding the streams shall not exceed the capacity of the link;
determining for each stream, having regard to the amount of data buffered at a receiver for that stream, and to the minimum bit rate needed to transmit the remainder of that stream at the chosen encoder setting, the time at which that bit rate ceases to be needed; and
allocating any surplus capacity of the transmission link to that stream that has the earliest such time.
Other, preferred, aspects of the invention are set out in the claims.